관련 동영상: https://youtu.be/MuNOAArae0M
주어진 코드를 활용하여 다음 출력 결과를 갖는 부동산 프로그램을 작성하라.
주어진 코드
class House:
# 매물 초기화
def __init__(self, location, house_type, deal_type, price, completion_year):
pass
# 매물 정보 표시
def show_detail(self):
pass
출력 결과:
총 3개의 매물이 있습니다.
강남 아파트 매매 10억 2010년
마포 오피스텔 전세 5억 2007년
송파 빌라 월세 500/50 2000년
클래스, 인스턴스, 생성자를 활용하여 프로그램을 완성한다.
class House:
def __init__(self, location, house_type, deal_type, price, completion_year):
self.location = location
self.house_type = house_type
self.deal_type = deal_type
self.price = price
self.completion_year = completion_year
def show_detail(self):
print(self.location, self.house_type, self.deal_type, self.price, self.completion_year)
house1 = House("강남", "아파트", "매매", "10억", "2010년")
house2 = House("마포", "오피스텔", "전세", "5억", "2007년")
house3 = House("송파", "빌라", "월세", "500/50", "2000년")
houses = [house1, house2, house3]
print(f"총 {len(houses)}개의 매물이 있습니다.")
for house in houses:
house.show_detail()
주어진 코드는 클래스(class)를 활용하여 평균 학점(average grade)을 산정하는 프로그램이다.
class GradeCalculator:
def __init__(self, scores):
self.scores = scores
def calculate_average(self):
total = sum(self.scores)
return total / len(self.scores)
def calculate_grade(self):
average = self.calculate_average()
if average >= 90:
return "A"
elif average >= 80:
return "B"
elif average >= 70:
return "C"
elif average >= 60:
return "D"
else:
return "F"
scores = [85, 92, 78, 90, 89]
calculator = GradeCalculator(scores)
print("Average score:", calculator.calculate_average())
print("Grade:", calculator.calculate_grade())
출력 결과:
Average score: 86.8
Grade: B
위 코드를 수정하여, 학점(A, B+, C 등)일 경우, 평균 학점을 숫자로 변환하여 출력하라.
grade_scale = {"A+": 4.5, "A": 4.0, "B+": 3.5, "B": 3.0, "C+": 2.5, "C": 2.0, "F": 0.0}
class GradeCalculator:
def __init__(self, scores):
self.scores = scores
def calculate_average(self):
total = sum(grade_scale[grade] for grade in self.scores)
return round(total / len(self.scores), 2)
scores = ["B+", "A", "C+", "A", "B+"]
calculator = GradeCalculator(scores)
print("Average score:", calculator.calculate_average())
출력 결과:
Average score: 4.15